package com.strato.saas.user.v1_0_0.model;

import java.util.ArrayList;
import java.util.Date;
import java.util.List;

public class UserInfoExample {
    protected String orderByClause;

    protected boolean distinct;

    protected List<Criteria> oredCriteria;

    public UserInfoExample() {
        oredCriteria = new ArrayList<Criteria>();
    }

    public void setOrderByClause(String orderByClause) {
        this.orderByClause = orderByClause;
    }

    public String getOrderByClause() {
        return orderByClause;
    }

    public void setDistinct(boolean distinct) {
        this.distinct = distinct;
    }

    public boolean isDistinct() {
        return distinct;
    }

    public List<Criteria> getOredCriteria() {
        return oredCriteria;
    }

    public void or(Criteria criteria) {
        oredCriteria.add(criteria);
    }

    public Criteria or() {
        Criteria criteria = createCriteriaInternal();
        oredCriteria.add(criteria);
        return criteria;
    }

    public Criteria createCriteria() {
        Criteria criteria = createCriteriaInternal();
        if (oredCriteria.size() == 0) {
            oredCriteria.add(criteria);
        }
        return criteria;
    }

    protected Criteria createCriteriaInternal() {
        Criteria criteria = new Criteria();
        return criteria;
    }

    public void clear() {
        oredCriteria.clear();
        orderByClause = null;
        distinct = false;
    }

    protected abstract static class GeneratedCriteria {
        protected List<Criterion> criteria;

        protected GeneratedCriteria() {
            super();
            criteria = new ArrayList<Criterion>();
        }

        public boolean isValid() {
            return criteria.size() > 0;
        }

        public List<Criterion> getAllCriteria() {
            return criteria;
        }

        public List<Criterion> getCriteria() {
            return criteria;
        }

        protected void addCriterion(String condition) {
            if (condition == null) {
                throw new RuntimeException("Value for condition cannot be null");
            }
            criteria.add(new Criterion(condition));
        }

        protected void addCriterion(String condition, Object value, String property) {
            if (value == null) {
                throw new RuntimeException("Value for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value));
        }

        protected void addCriterion(String condition, Object value1, Object value2, String property) {
            if (value1 == null || value2 == null) {
                throw new RuntimeException("Between values for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value1, value2));
        }

        public Criteria andUserIdIsNull() {
            addCriterion("user_id is null");
            return (Criteria) this;
        }

        public Criteria andUserIdIsNotNull() {
            addCriterion("user_id is not null");
            return (Criteria) this;
        }

        public Criteria andUserIdEqualTo(String value) {
            addCriterion("user_id =", value, "userId");
            return (Criteria) this;
        }

        public Criteria andUserIdNotEqualTo(String value) {
            addCriterion("user_id <>", value, "userId");
            return (Criteria) this;
        }

        public Criteria andUserIdGreaterThan(String value) {
            addCriterion("user_id >", value, "userId");
            return (Criteria) this;
        }

        public Criteria andUserIdGreaterThanOrEqualTo(String value) {
            addCriterion("user_id >=", value, "userId");
            return (Criteria) this;
        }

        public Criteria andUserIdLessThan(String value) {
            addCriterion("user_id <", value, "userId");
            return (Criteria) this;
        }

        public Criteria andUserIdLessThanOrEqualTo(String value) {
            addCriterion("user_id <=", value, "userId");
            return (Criteria) this;
        }

        public Criteria andUserIdLike(String value) {
            addCriterion("user_id like", value, "userId");
            return (Criteria) this;
        }

        public Criteria andUserIdNotLike(String value) {
            addCriterion("user_id not like", value, "userId");
            return (Criteria) this;
        }

        public Criteria andUserIdIn(List<String> values) {
            addCriterion("user_id in", values, "userId");
            return (Criteria) this;
        }

        public Criteria andUserIdNotIn(List<String> values) {
            addCriterion("user_id not in", values, "userId");
            return (Criteria) this;
        }

        public Criteria andUserIdBetween(String value1, String value2) {
            addCriterion("user_id between", value1, value2, "userId");
            return (Criteria) this;
        }

        public Criteria andUserIdNotBetween(String value1, String value2) {
            addCriterion("user_id not between", value1, value2, "userId");
            return (Criteria) this;
        }

        public Criteria andMerchantIdIsNull() {
            addCriterion("merchant_id is null");
            return (Criteria) this;
        }

        public Criteria andMerchantIdIsNotNull() {
            addCriterion("merchant_id is not null");
            return (Criteria) this;
        }

        public Criteria andMerchantIdEqualTo(String value) {
            addCriterion("merchant_id =", value, "merchantId");
            return (Criteria) this;
        }

        public Criteria andMerchantIdNotEqualTo(String value) {
            addCriterion("merchant_id <>", value, "merchantId");
            return (Criteria) this;
        }

        public Criteria andMerchantIdGreaterThan(String value) {
            addCriterion("merchant_id >", value, "merchantId");
            return (Criteria) this;
        }

        public Criteria andMerchantIdGreaterThanOrEqualTo(String value) {
            addCriterion("merchant_id >=", value, "merchantId");
            return (Criteria) this;
        }

        public Criteria andMerchantIdLessThan(String value) {
            addCriterion("merchant_id <", value, "merchantId");
            return (Criteria) this;
        }

        public Criteria andMerchantIdLessThanOrEqualTo(String value) {
            addCriterion("merchant_id <=", value, "merchantId");
            return (Criteria) this;
        }

        public Criteria andMerchantIdLike(String value) {
            addCriterion("merchant_id like", value, "merchantId");
            return (Criteria) this;
        }

        public Criteria andMerchantIdNotLike(String value) {
            addCriterion("merchant_id not like", value, "merchantId");
            return (Criteria) this;
        }

        public Criteria andMerchantIdIn(List<String> values) {
            addCriterion("merchant_id in", values, "merchantId");
            return (Criteria) this;
        }

        public Criteria andMerchantIdNotIn(List<String> values) {
            addCriterion("merchant_id not in", values, "merchantId");
            return (Criteria) this;
        }

        public Criteria andMerchantIdBetween(String value1, String value2) {
            addCriterion("merchant_id between", value1, value2, "merchantId");
            return (Criteria) this;
        }

        public Criteria andMerchantIdNotBetween(String value1, String value2) {
            addCriterion("merchant_id not between", value1, value2, "merchantId");
            return (Criteria) this;
        }

        public Criteria andUserCodeIsNull() {
            addCriterion("user_code is null");
            return (Criteria) this;
        }

        public Criteria andUserCodeIsNotNull() {
            addCriterion("user_code is not null");
            return (Criteria) this;
        }

        public Criteria andUserCodeEqualTo(String value) {
            addCriterion("user_code =", value, "userCode");
            return (Criteria) this;
        }

        public Criteria andUserCodeNotEqualTo(String value) {
            addCriterion("user_code <>", value, "userCode");
            return (Criteria) this;
        }

        public Criteria andUserCodeGreaterThan(String value) {
            addCriterion("user_code >", value, "userCode");
            return (Criteria) this;
        }

        public Criteria andUserCodeGreaterThanOrEqualTo(String value) {
            addCriterion("user_code >=", value, "userCode");
            return (Criteria) this;
        }

        public Criteria andUserCodeLessThan(String value) {
            addCriterion("user_code <", value, "userCode");
            return (Criteria) this;
        }

        public Criteria andUserCodeLessThanOrEqualTo(String value) {
            addCriterion("user_code <=", value, "userCode");
            return (Criteria) this;
        }

        public Criteria andUserCodeLike(String value) {
            addCriterion("user_code like", value, "userCode");
            return (Criteria) this;
        }

        public Criteria andUserCodeNotLike(String value) {
            addCriterion("user_code not like", value, "userCode");
            return (Criteria) this;
        }

        public Criteria andUserCodeIn(List<String> values) {
            addCriterion("user_code in", values, "userCode");
            return (Criteria) this;
        }

        public Criteria andUserCodeNotIn(List<String> values) {
            addCriterion("user_code not in", values, "userCode");
            return (Criteria) this;
        }

        public Criteria andUserCodeBetween(String value1, String value2) {
            addCriterion("user_code between", value1, value2, "userCode");
            return (Criteria) this;
        }

        public Criteria andUserCodeNotBetween(String value1, String value2) {
            addCriterion("user_code not between", value1, value2, "userCode");
            return (Criteria) this;
        }

        public Criteria andPasswordIsNull() {
            addCriterion("password is null");
            return (Criteria) this;
        }

        public Criteria andPasswordIsNotNull() {
            addCriterion("password is not null");
            return (Criteria) this;
        }

        public Criteria andPasswordEqualTo(String value) {
            addCriterion("password =", value, "password");
            return (Criteria) this;
        }

        public Criteria andPasswordNotEqualTo(String value) {
            addCriterion("password <>", value, "password");
            return (Criteria) this;
        }

        public Criteria andPasswordGreaterThan(String value) {
            addCriterion("password >", value, "password");
            return (Criteria) this;
        }

        public Criteria andPasswordGreaterThanOrEqualTo(String value) {
            addCriterion("password >=", value, "password");
            return (Criteria) this;
        }

        public Criteria andPasswordLessThan(String value) {
            addCriterion("password <", value, "password");
            return (Criteria) this;
        }

        public Criteria andPasswordLessThanOrEqualTo(String value) {
            addCriterion("password <=", value, "password");
            return (Criteria) this;
        }

        public Criteria andPasswordLike(String value) {
            addCriterion("password like", value, "password");
            return (Criteria) this;
        }

        public Criteria andPasswordNotLike(String value) {
            addCriterion("password not like", value, "password");
            return (Criteria) this;
        }

        public Criteria andPasswordIn(List<String> values) {
            addCriterion("password in", values, "password");
            return (Criteria) this;
        }

        public Criteria andPasswordNotIn(List<String> values) {
            addCriterion("password not in", values, "password");
            return (Criteria) this;
        }

        public Criteria andPasswordBetween(String value1, String value2) {
            addCriterion("password between", value1, value2, "password");
            return (Criteria) this;
        }

        public Criteria andPasswordNotBetween(String value1, String value2) {
            addCriterion("password not between", value1, value2, "password");
            return (Criteria) this;
        }

        public Criteria andUserNameIsNull() {
            addCriterion("user_name is null");
            return (Criteria) this;
        }

        public Criteria andUserNameIsNotNull() {
            addCriterion("user_name is not null");
            return (Criteria) this;
        }

        public Criteria andUserNameEqualTo(String value) {
            addCriterion("user_name =", value, "userName");
            return (Criteria) this;
        }

        public Criteria andUserNameNotEqualTo(String value) {
            addCriterion("user_name <>", value, "userName");
            return (Criteria) this;
        }

        public Criteria andUserNameGreaterThan(String value) {
            addCriterion("user_name >", value, "userName");
            return (Criteria) this;
        }

        public Criteria andUserNameGreaterThanOrEqualTo(String value) {
            addCriterion("user_name >=", value, "userName");
            return (Criteria) this;
        }

        public Criteria andUserNameLessThan(String value) {
            addCriterion("user_name <", value, "userName");
            return (Criteria) this;
        }

        public Criteria andUserNameLessThanOrEqualTo(String value) {
            addCriterion("user_name <=", value, "userName");
            return (Criteria) this;
        }

        public Criteria andUserNameLike(String value) {
            addCriterion("user_name like", value, "userName");
            return (Criteria) this;
        }

        public Criteria andUserNameNotLike(String value) {
            addCriterion("user_name not like", value, "userName");
            return (Criteria) this;
        }

        public Criteria andUserNameIn(List<String> values) {
            addCriterion("user_name in", values, "userName");
            return (Criteria) this;
        }

        public Criteria andUserNameNotIn(List<String> values) {
            addCriterion("user_name not in", values, "userName");
            return (Criteria) this;
        }

        public Criteria andUserNameBetween(String value1, String value2) {
            addCriterion("user_name between", value1, value2, "userName");
            return (Criteria) this;
        }

        public Criteria andUserNameNotBetween(String value1, String value2) {
            addCriterion("user_name not between", value1, value2, "userName");
            return (Criteria) this;
        }

        public Criteria andEmaiValidateFlagIsNull() {
            addCriterion("emai_validate_flag is null");
            return (Criteria) this;
        }

        public Criteria andEmaiValidateFlagIsNotNull() {
            addCriterion("emai_validate_flag is not null");
            return (Criteria) this;
        }

        public Criteria andEmaiValidateFlagEqualTo(String value) {
            addCriterion("emai_validate_flag =", value, "emaiValidateFlag");
            return (Criteria) this;
        }

        public Criteria andEmaiValidateFlagNotEqualTo(String value) {
            addCriterion("emai_validate_flag <>", value, "emaiValidateFlag");
            return (Criteria) this;
        }

        public Criteria andEmaiValidateFlagGreaterThan(String value) {
            addCriterion("emai_validate_flag >", value, "emaiValidateFlag");
            return (Criteria) this;
        }

        public Criteria andEmaiValidateFlagGreaterThanOrEqualTo(String value) {
            addCriterion("emai_validate_flag >=", value, "emaiValidateFlag");
            return (Criteria) this;
        }

        public Criteria andEmaiValidateFlagLessThan(String value) {
            addCriterion("emai_validate_flag <", value, "emaiValidateFlag");
            return (Criteria) this;
        }

        public Criteria andEmaiValidateFlagLessThanOrEqualTo(String value) {
            addCriterion("emai_validate_flag <=", value, "emaiValidateFlag");
            return (Criteria) this;
        }

        public Criteria andEmaiValidateFlagLike(String value) {
            addCriterion("emai_validate_flag like", value, "emaiValidateFlag");
            return (Criteria) this;
        }

        public Criteria andEmaiValidateFlagNotLike(String value) {
            addCriterion("emai_validate_flag not like", value, "emaiValidateFlag");
            return (Criteria) this;
        }

        public Criteria andEmaiValidateFlagIn(List<String> values) {
            addCriterion("emai_validate_flag in", values, "emaiValidateFlag");
            return (Criteria) this;
        }

        public Criteria andEmaiValidateFlagNotIn(List<String> values) {
            addCriterion("emai_validate_flag not in", values, "emaiValidateFlag");
            return (Criteria) this;
        }

        public Criteria andEmaiValidateFlagBetween(String value1, String value2) {
            addCriterion("emai_validate_flag between", value1, value2, "emaiValidateFlag");
            return (Criteria) this;
        }

        public Criteria andEmaiValidateFlagNotBetween(String value1, String value2) {
            addCriterion("emai_validate_flag not between", value1, value2, "emaiValidateFlag");
            return (Criteria) this;
        }

        public Criteria andEmailIsNull() {
            addCriterion("email is null");
            return (Criteria) this;
        }

        public Criteria andEmailIsNotNull() {
            addCriterion("email is not null");
            return (Criteria) this;
        }

        public Criteria andEmailEqualTo(String value) {
            addCriterion("email =", value, "email");
            return (Criteria) this;
        }

        public Criteria andEmailNotEqualTo(String value) {
            addCriterion("email <>", value, "email");
            return (Criteria) this;
        }

        public Criteria andEmailGreaterThan(String value) {
            addCriterion("email >", value, "email");
            return (Criteria) this;
        }

        public Criteria andEmailGreaterThanOrEqualTo(String value) {
            addCriterion("email >=", value, "email");
            return (Criteria) this;
        }

        public Criteria andEmailLessThan(String value) {
            addCriterion("email <", value, "email");
            return (Criteria) this;
        }

        public Criteria andEmailLessThanOrEqualTo(String value) {
            addCriterion("email <=", value, "email");
            return (Criteria) this;
        }

        public Criteria andEmailLike(String value) {
            addCriterion("email like", value, "email");
            return (Criteria) this;
        }

        public Criteria andEmailNotLike(String value) {
            addCriterion("email not like", value, "email");
            return (Criteria) this;
        }

        public Criteria andEmailIn(List<String> values) {
            addCriterion("email in", values, "email");
            return (Criteria) this;
        }

        public Criteria andEmailNotIn(List<String> values) {
            addCriterion("email not in", values, "email");
            return (Criteria) this;
        }

        public Criteria andEmailBetween(String value1, String value2) {
            addCriterion("email between", value1, value2, "email");
            return (Criteria) this;
        }

        public Criteria andEmailNotBetween(String value1, String value2) {
            addCriterion("email not between", value1, value2, "email");
            return (Criteria) this;
        }

        public Criteria andSupperUserFlagIsNull() {
            addCriterion("supper_user_flag is null");
            return (Criteria) this;
        }

        public Criteria andSupperUserFlagIsNotNull() {
            addCriterion("supper_user_flag is not null");
            return (Criteria) this;
        }

        public Criteria andSupperUserFlagEqualTo(String value) {
            addCriterion("supper_user_flag =", value, "supperUserFlag");
            return (Criteria) this;
        }

        public Criteria andSupperUserFlagNotEqualTo(String value) {
            addCriterion("supper_user_flag <>", value, "supperUserFlag");
            return (Criteria) this;
        }

        public Criteria andSupperUserFlagGreaterThan(String value) {
            addCriterion("supper_user_flag >", value, "supperUserFlag");
            return (Criteria) this;
        }

        public Criteria andSupperUserFlagGreaterThanOrEqualTo(String value) {
            addCriterion("supper_user_flag >=", value, "supperUserFlag");
            return (Criteria) this;
        }

        public Criteria andSupperUserFlagLessThan(String value) {
            addCriterion("supper_user_flag <", value, "supperUserFlag");
            return (Criteria) this;
        }

        public Criteria andSupperUserFlagLessThanOrEqualTo(String value) {
            addCriterion("supper_user_flag <=", value, "supperUserFlag");
            return (Criteria) this;
        }

        public Criteria andSupperUserFlagLike(String value) {
            addCriterion("supper_user_flag like", value, "supperUserFlag");
            return (Criteria) this;
        }

        public Criteria andSupperUserFlagNotLike(String value) {
            addCriterion("supper_user_flag not like", value, "supperUserFlag");
            return (Criteria) this;
        }

        public Criteria andSupperUserFlagIn(List<String> values) {
            addCriterion("supper_user_flag in", values, "supperUserFlag");
            return (Criteria) this;
        }

        public Criteria andSupperUserFlagNotIn(List<String> values) {
            addCriterion("supper_user_flag not in", values, "supperUserFlag");
            return (Criteria) this;
        }

        public Criteria andSupperUserFlagBetween(String value1, String value2) {
            addCriterion("supper_user_flag between", value1, value2, "supperUserFlag");
            return (Criteria) this;
        }

        public Criteria andSupperUserFlagNotBetween(String value1, String value2) {
            addCriterion("supper_user_flag not between", value1, value2, "supperUserFlag");
            return (Criteria) this;
        }

        public Criteria andUserTypeIsNull() {
            addCriterion("user_type is null");
            return (Criteria) this;
        }

        public Criteria andUserTypeIsNotNull() {
            addCriterion("user_type is not null");
            return (Criteria) this;
        }

        public Criteria andUserTypeEqualTo(String value) {
            addCriterion("user_type =", value, "userType");
            return (Criteria) this;
        }

        public Criteria andUserTypeNotEqualTo(String value) {
            addCriterion("user_type <>", value, "userType");
            return (Criteria) this;
        }

        public Criteria andUserTypeGreaterThan(String value) {
            addCriterion("user_type >", value, "userType");
            return (Criteria) this;
        }

        public Criteria andUserTypeGreaterThanOrEqualTo(String value) {
            addCriterion("user_type >=", value, "userType");
            return (Criteria) this;
        }

        public Criteria andUserTypeLessThan(String value) {
            addCriterion("user_type <", value, "userType");
            return (Criteria) this;
        }

        public Criteria andUserTypeLessThanOrEqualTo(String value) {
            addCriterion("user_type <=", value, "userType");
            return (Criteria) this;
        }

        public Criteria andUserTypeLike(String value) {
            addCriterion("user_type like", value, "userType");
            return (Criteria) this;
        }

        public Criteria andUserTypeNotLike(String value) {
            addCriterion("user_type not like", value, "userType");
            return (Criteria) this;
        }

        public Criteria andUserTypeIn(List<String> values) {
            addCriterion("user_type in", values, "userType");
            return (Criteria) this;
        }

        public Criteria andUserTypeNotIn(List<String> values) {
            addCriterion("user_type not in", values, "userType");
            return (Criteria) this;
        }

        public Criteria andUserTypeBetween(String value1, String value2) {
            addCriterion("user_type between", value1, value2, "userType");
            return (Criteria) this;
        }

        public Criteria andUserTypeNotBetween(String value1, String value2) {
            addCriterion("user_type not between", value1, value2, "userType");
            return (Criteria) this;
        }

        public Criteria andWeixinValidateFlagIsNull() {
            addCriterion("weixin_validate_flag is null");
            return (Criteria) this;
        }

        public Criteria andWeixinValidateFlagIsNotNull() {
            addCriterion("weixin_validate_flag is not null");
            return (Criteria) this;
        }

        public Criteria andWeixinValidateFlagEqualTo(String value) {
            addCriterion("weixin_validate_flag =", value, "weixinValidateFlag");
            return (Criteria) this;
        }

        public Criteria andWeixinValidateFlagNotEqualTo(String value) {
            addCriterion("weixin_validate_flag <>", value, "weixinValidateFlag");
            return (Criteria) this;
        }

        public Criteria andWeixinValidateFlagGreaterThan(String value) {
            addCriterion("weixin_validate_flag >", value, "weixinValidateFlag");
            return (Criteria) this;
        }

        public Criteria andWeixinValidateFlagGreaterThanOrEqualTo(String value) {
            addCriterion("weixin_validate_flag >=", value, "weixinValidateFlag");
            return (Criteria) this;
        }

        public Criteria andWeixinValidateFlagLessThan(String value) {
            addCriterion("weixin_validate_flag <", value, "weixinValidateFlag");
            return (Criteria) this;
        }

        public Criteria andWeixinValidateFlagLessThanOrEqualTo(String value) {
            addCriterion("weixin_validate_flag <=", value, "weixinValidateFlag");
            return (Criteria) this;
        }

        public Criteria andWeixinValidateFlagLike(String value) {
            addCriterion("weixin_validate_flag like", value, "weixinValidateFlag");
            return (Criteria) this;
        }

        public Criteria andWeixinValidateFlagNotLike(String value) {
            addCriterion("weixin_validate_flag not like", value, "weixinValidateFlag");
            return (Criteria) this;
        }

        public Criteria andWeixinValidateFlagIn(List<String> values) {
            addCriterion("weixin_validate_flag in", values, "weixinValidateFlag");
            return (Criteria) this;
        }

        public Criteria andWeixinValidateFlagNotIn(List<String> values) {
            addCriterion("weixin_validate_flag not in", values, "weixinValidateFlag");
            return (Criteria) this;
        }

        public Criteria andWeixinValidateFlagBetween(String value1, String value2) {
            addCriterion("weixin_validate_flag between", value1, value2, "weixinValidateFlag");
            return (Criteria) this;
        }

        public Criteria andWeixinValidateFlagNotBetween(String value1, String value2) {
            addCriterion("weixin_validate_flag not between", value1, value2, "weixinValidateFlag");
            return (Criteria) this;
        }

        public Criteria andWeixinIsNull() {
            addCriterion("weixin is null");
            return (Criteria) this;
        }

        public Criteria andWeixinIsNotNull() {
            addCriterion("weixin is not null");
            return (Criteria) this;
        }

        public Criteria andWeixinEqualTo(String value) {
            addCriterion("weixin =", value, "weixin");
            return (Criteria) this;
        }

        public Criteria andWeixinNotEqualTo(String value) {
            addCriterion("weixin <>", value, "weixin");
            return (Criteria) this;
        }

        public Criteria andWeixinGreaterThan(String value) {
            addCriterion("weixin >", value, "weixin");
            return (Criteria) this;
        }

        public Criteria andWeixinGreaterThanOrEqualTo(String value) {
            addCriterion("weixin >=", value, "weixin");
            return (Criteria) this;
        }

        public Criteria andWeixinLessThan(String value) {
            addCriterion("weixin <", value, "weixin");
            return (Criteria) this;
        }

        public Criteria andWeixinLessThanOrEqualTo(String value) {
            addCriterion("weixin <=", value, "weixin");
            return (Criteria) this;
        }

        public Criteria andWeixinLike(String value) {
            addCriterion("weixin like", value, "weixin");
            return (Criteria) this;
        }

        public Criteria andWeixinNotLike(String value) {
            addCriterion("weixin not like", value, "weixin");
            return (Criteria) this;
        }

        public Criteria andWeixinIn(List<String> values) {
            addCriterion("weixin in", values, "weixin");
            return (Criteria) this;
        }

        public Criteria andWeixinNotIn(List<String> values) {
            addCriterion("weixin not in", values, "weixin");
            return (Criteria) this;
        }

        public Criteria andWeixinBetween(String value1, String value2) {
            addCriterion("weixin between", value1, value2, "weixin");
            return (Criteria) this;
        }

        public Criteria andWeixinNotBetween(String value1, String value2) {
            addCriterion("weixin not between", value1, value2, "weixin");
            return (Criteria) this;
        }

        public Criteria andQqValidateFlagIsNull() {
            addCriterion("qq_validate_flag is null");
            return (Criteria) this;
        }

        public Criteria andQqValidateFlagIsNotNull() {
            addCriterion("qq_validate_flag is not null");
            return (Criteria) this;
        }

        public Criteria andQqValidateFlagEqualTo(String value) {
            addCriterion("qq_validate_flag =", value, "qqValidateFlag");
            return (Criteria) this;
        }

        public Criteria andQqValidateFlagNotEqualTo(String value) {
            addCriterion("qq_validate_flag <>", value, "qqValidateFlag");
            return (Criteria) this;
        }

        public Criteria andQqValidateFlagGreaterThan(String value) {
            addCriterion("qq_validate_flag >", value, "qqValidateFlag");
            return (Criteria) this;
        }

        public Criteria andQqValidateFlagGreaterThanOrEqualTo(String value) {
            addCriterion("qq_validate_flag >=", value, "qqValidateFlag");
            return (Criteria) this;
        }

        public Criteria andQqValidateFlagLessThan(String value) {
            addCriterion("qq_validate_flag <", value, "qqValidateFlag");
            return (Criteria) this;
        }

        public Criteria andQqValidateFlagLessThanOrEqualTo(String value) {
            addCriterion("qq_validate_flag <=", value, "qqValidateFlag");
            return (Criteria) this;
        }

        public Criteria andQqValidateFlagLike(String value) {
            addCriterion("qq_validate_flag like", value, "qqValidateFlag");
            return (Criteria) this;
        }

        public Criteria andQqValidateFlagNotLike(String value) {
            addCriterion("qq_validate_flag not like", value, "qqValidateFlag");
            return (Criteria) this;
        }

        public Criteria andQqValidateFlagIn(List<String> values) {
            addCriterion("qq_validate_flag in", values, "qqValidateFlag");
            return (Criteria) this;
        }

        public Criteria andQqValidateFlagNotIn(List<String> values) {
            addCriterion("qq_validate_flag not in", values, "qqValidateFlag");
            return (Criteria) this;
        }

        public Criteria andQqValidateFlagBetween(String value1, String value2) {
            addCriterion("qq_validate_flag between", value1, value2, "qqValidateFlag");
            return (Criteria) this;
        }

        public Criteria andQqValidateFlagNotBetween(String value1, String value2) {
            addCriterion("qq_validate_flag not between", value1, value2, "qqValidateFlag");
            return (Criteria) this;
        }

        public Criteria andQqIsNull() {
            addCriterion("qq is null");
            return (Criteria) this;
        }

        public Criteria andQqIsNotNull() {
            addCriterion("qq is not null");
            return (Criteria) this;
        }

        public Criteria andQqEqualTo(String value) {
            addCriterion("qq =", value, "qq");
            return (Criteria) this;
        }

        public Criteria andQqNotEqualTo(String value) {
            addCriterion("qq <>", value, "qq");
            return (Criteria) this;
        }

        public Criteria andQqGreaterThan(String value) {
            addCriterion("qq >", value, "qq");
            return (Criteria) this;
        }

        public Criteria andQqGreaterThanOrEqualTo(String value) {
            addCriterion("qq >=", value, "qq");
            return (Criteria) this;
        }

        public Criteria andQqLessThan(String value) {
            addCriterion("qq <", value, "qq");
            return (Criteria) this;
        }

        public Criteria andQqLessThanOrEqualTo(String value) {
            addCriterion("qq <=", value, "qq");
            return (Criteria) this;
        }

        public Criteria andQqLike(String value) {
            addCriterion("qq like", value, "qq");
            return (Criteria) this;
        }

        public Criteria andQqNotLike(String value) {
            addCriterion("qq not like", value, "qq");
            return (Criteria) this;
        }

        public Criteria andQqIn(List<String> values) {
            addCriterion("qq in", values, "qq");
            return (Criteria) this;
        }

        public Criteria andQqNotIn(List<String> values) {
            addCriterion("qq not in", values, "qq");
            return (Criteria) this;
        }

        public Criteria andQqBetween(String value1, String value2) {
            addCriterion("qq between", value1, value2, "qq");
            return (Criteria) this;
        }

        public Criteria andQqNotBetween(String value1, String value2) {
            addCriterion("qq not between", value1, value2, "qq");
            return (Criteria) this;
        }

        public Criteria andMobileValidateFlagIsNull() {
            addCriterion("mobile_validate_flag is null");
            return (Criteria) this;
        }

        public Criteria andMobileValidateFlagIsNotNull() {
            addCriterion("mobile_validate_flag is not null");
            return (Criteria) this;
        }

        public Criteria andMobileValidateFlagEqualTo(String value) {
            addCriterion("mobile_validate_flag =", value, "mobileValidateFlag");
            return (Criteria) this;
        }

        public Criteria andMobileValidateFlagNotEqualTo(String value) {
            addCriterion("mobile_validate_flag <>", value, "mobileValidateFlag");
            return (Criteria) this;
        }

        public Criteria andMobileValidateFlagGreaterThan(String value) {
            addCriterion("mobile_validate_flag >", value, "mobileValidateFlag");
            return (Criteria) this;
        }

        public Criteria andMobileValidateFlagGreaterThanOrEqualTo(String value) {
            addCriterion("mobile_validate_flag >=", value, "mobileValidateFlag");
            return (Criteria) this;
        }

        public Criteria andMobileValidateFlagLessThan(String value) {
            addCriterion("mobile_validate_flag <", value, "mobileValidateFlag");
            return (Criteria) this;
        }

        public Criteria andMobileValidateFlagLessThanOrEqualTo(String value) {
            addCriterion("mobile_validate_flag <=", value, "mobileValidateFlag");
            return (Criteria) this;
        }

        public Criteria andMobileValidateFlagLike(String value) {
            addCriterion("mobile_validate_flag like", value, "mobileValidateFlag");
            return (Criteria) this;
        }

        public Criteria andMobileValidateFlagNotLike(String value) {
            addCriterion("mobile_validate_flag not like", value, "mobileValidateFlag");
            return (Criteria) this;
        }

        public Criteria andMobileValidateFlagIn(List<String> values) {
            addCriterion("mobile_validate_flag in", values, "mobileValidateFlag");
            return (Criteria) this;
        }

        public Criteria andMobileValidateFlagNotIn(List<String> values) {
            addCriterion("mobile_validate_flag not in", values, "mobileValidateFlag");
            return (Criteria) this;
        }

        public Criteria andMobileValidateFlagBetween(String value1, String value2) {
            addCriterion("mobile_validate_flag between", value1, value2, "mobileValidateFlag");
            return (Criteria) this;
        }

        public Criteria andMobileValidateFlagNotBetween(String value1, String value2) {
            addCriterion("mobile_validate_flag not between", value1, value2, "mobileValidateFlag");
            return (Criteria) this;
        }

        public Criteria andMobileIsNull() {
            addCriterion("mobile is null");
            return (Criteria) this;
        }

        public Criteria andMobileIsNotNull() {
            addCriterion("mobile is not null");
            return (Criteria) this;
        }

        public Criteria andMobileEqualTo(String value) {
            addCriterion("mobile =", value, "mobile");
            return (Criteria) this;
        }

        public Criteria andMobileNotEqualTo(String value) {
            addCriterion("mobile <>", value, "mobile");
            return (Criteria) this;
        }

        public Criteria andMobileGreaterThan(String value) {
            addCriterion("mobile >", value, "mobile");
            return (Criteria) this;
        }

        public Criteria andMobileGreaterThanOrEqualTo(String value) {
            addCriterion("mobile >=", value, "mobile");
            return (Criteria) this;
        }

        public Criteria andMobileLessThan(String value) {
            addCriterion("mobile <", value, "mobile");
            return (Criteria) this;
        }

        public Criteria andMobileLessThanOrEqualTo(String value) {
            addCriterion("mobile <=", value, "mobile");
            return (Criteria) this;
        }

        public Criteria andMobileLike(String value) {
            addCriterion("mobile like", value, "mobile");
            return (Criteria) this;
        }

        public Criteria andMobileNotLike(String value) {
            addCriterion("mobile not like", value, "mobile");
            return (Criteria) this;
        }

        public Criteria andMobileIn(List<String> values) {
            addCriterion("mobile in", values, "mobile");
            return (Criteria) this;
        }

        public Criteria andMobileNotIn(List<String> values) {
            addCriterion("mobile not in", values, "mobile");
            return (Criteria) this;
        }

        public Criteria andMobileBetween(String value1, String value2) {
            addCriterion("mobile between", value1, value2, "mobile");
            return (Criteria) this;
        }

        public Criteria andMobileNotBetween(String value1, String value2) {
            addCriterion("mobile not between", value1, value2, "mobile");
            return (Criteria) this;
        }

        public Criteria andPhoneIsNull() {
            addCriterion("phone is null");
            return (Criteria) this;
        }

        public Criteria andPhoneIsNotNull() {
            addCriterion("phone is not null");
            return (Criteria) this;
        }

        public Criteria andPhoneEqualTo(Integer value) {
            addCriterion("phone =", value, "phone");
            return (Criteria) this;
        }

        public Criteria andPhoneNotEqualTo(Integer value) {
            addCriterion("phone <>", value, "phone");
            return (Criteria) this;
        }

        public Criteria andPhoneGreaterThan(Integer value) {
            addCriterion("phone >", value, "phone");
            return (Criteria) this;
        }

        public Criteria andPhoneGreaterThanOrEqualTo(Integer value) {
            addCriterion("phone >=", value, "phone");
            return (Criteria) this;
        }

        public Criteria andPhoneLessThan(Integer value) {
            addCriterion("phone <", value, "phone");
            return (Criteria) this;
        }

        public Criteria andPhoneLessThanOrEqualTo(Integer value) {
            addCriterion("phone <=", value, "phone");
            return (Criteria) this;
        }

        public Criteria andPhoneIn(List<Integer> values) {
            addCriterion("phone in", values, "phone");
            return (Criteria) this;
        }

        public Criteria andPhoneNotIn(List<Integer> values) {
            addCriterion("phone not in", values, "phone");
            return (Criteria) this;
        }

        public Criteria andPhoneBetween(Integer value1, Integer value2) {
            addCriterion("phone between", value1, value2, "phone");
            return (Criteria) this;
        }

        public Criteria andPhoneNotBetween(Integer value1, Integer value2) {
            addCriterion("phone not between", value1, value2, "phone");
            return (Criteria) this;
        }

        public Criteria andPhonePostalCodeIsNull() {
            addCriterion("phone_postal_code is null");
            return (Criteria) this;
        }

        public Criteria andPhonePostalCodeIsNotNull() {
            addCriterion("phone_postal_code is not null");
            return (Criteria) this;
        }

        public Criteria andPhonePostalCodeEqualTo(String value) {
            addCriterion("phone_postal_code =", value, "phonePostalCode");
            return (Criteria) this;
        }

        public Criteria andPhonePostalCodeNotEqualTo(String value) {
            addCriterion("phone_postal_code <>", value, "phonePostalCode");
            return (Criteria) this;
        }

        public Criteria andPhonePostalCodeGreaterThan(String value) {
            addCriterion("phone_postal_code >", value, "phonePostalCode");
            return (Criteria) this;
        }

        public Criteria andPhonePostalCodeGreaterThanOrEqualTo(String value) {
            addCriterion("phone_postal_code >=", value, "phonePostalCode");
            return (Criteria) this;
        }

        public Criteria andPhonePostalCodeLessThan(String value) {
            addCriterion("phone_postal_code <", value, "phonePostalCode");
            return (Criteria) this;
        }

        public Criteria andPhonePostalCodeLessThanOrEqualTo(String value) {
            addCriterion("phone_postal_code <=", value, "phonePostalCode");
            return (Criteria) this;
        }

        public Criteria andPhonePostalCodeLike(String value) {
            addCriterion("phone_postal_code like", value, "phonePostalCode");
            return (Criteria) this;
        }

        public Criteria andPhonePostalCodeNotLike(String value) {
            addCriterion("phone_postal_code not like", value, "phonePostalCode");
            return (Criteria) this;
        }

        public Criteria andPhonePostalCodeIn(List<String> values) {
            addCriterion("phone_postal_code in", values, "phonePostalCode");
            return (Criteria) this;
        }

        public Criteria andPhonePostalCodeNotIn(List<String> values) {
            addCriterion("phone_postal_code not in", values, "phonePostalCode");
            return (Criteria) this;
        }

        public Criteria andPhonePostalCodeBetween(String value1, String value2) {
            addCriterion("phone_postal_code between", value1, value2, "phonePostalCode");
            return (Criteria) this;
        }

        public Criteria andPhonePostalCodeNotBetween(String value1, String value2) {
            addCriterion("phone_postal_code not between", value1, value2, "phonePostalCode");
            return (Criteria) this;
        }

        public Criteria andPhoneExtensionIsNull() {
            addCriterion("phone_extension is null");
            return (Criteria) this;
        }

        public Criteria andPhoneExtensionIsNotNull() {
            addCriterion("phone_extension is not null");
            return (Criteria) this;
        }

        public Criteria andPhoneExtensionEqualTo(String value) {
            addCriterion("phone_extension =", value, "phoneExtension");
            return (Criteria) this;
        }

        public Criteria andPhoneExtensionNotEqualTo(String value) {
            addCriterion("phone_extension <>", value, "phoneExtension");
            return (Criteria) this;
        }

        public Criteria andPhoneExtensionGreaterThan(String value) {
            addCriterion("phone_extension >", value, "phoneExtension");
            return (Criteria) this;
        }

        public Criteria andPhoneExtensionGreaterThanOrEqualTo(String value) {
            addCriterion("phone_extension >=", value, "phoneExtension");
            return (Criteria) this;
        }

        public Criteria andPhoneExtensionLessThan(String value) {
            addCriterion("phone_extension <", value, "phoneExtension");
            return (Criteria) this;
        }

        public Criteria andPhoneExtensionLessThanOrEqualTo(String value) {
            addCriterion("phone_extension <=", value, "phoneExtension");
            return (Criteria) this;
        }

        public Criteria andPhoneExtensionLike(String value) {
            addCriterion("phone_extension like", value, "phoneExtension");
            return (Criteria) this;
        }

        public Criteria andPhoneExtensionNotLike(String value) {
            addCriterion("phone_extension not like", value, "phoneExtension");
            return (Criteria) this;
        }

        public Criteria andPhoneExtensionIn(List<String> values) {
            addCriterion("phone_extension in", values, "phoneExtension");
            return (Criteria) this;
        }

        public Criteria andPhoneExtensionNotIn(List<String> values) {
            addCriterion("phone_extension not in", values, "phoneExtension");
            return (Criteria) this;
        }

        public Criteria andPhoneExtensionBetween(String value1, String value2) {
            addCriterion("phone_extension between", value1, value2, "phoneExtension");
            return (Criteria) this;
        }

        public Criteria andPhoneExtensionNotBetween(String value1, String value2) {
            addCriterion("phone_extension not between", value1, value2, "phoneExtension");
            return (Criteria) this;
        }

        public Criteria andLastLoginTimeIsNull() {
            addCriterion("last_login_time is null");
            return (Criteria) this;
        }

        public Criteria andLastLoginTimeIsNotNull() {
            addCriterion("last_login_time is not null");
            return (Criteria) this;
        }

        public Criteria andLastLoginTimeEqualTo(Date value) {
            addCriterion("last_login_time =", value, "lastLoginTime");
            return (Criteria) this;
        }

        public Criteria andLastLoginTimeNotEqualTo(Date value) {
            addCriterion("last_login_time <>", value, "lastLoginTime");
            return (Criteria) this;
        }

        public Criteria andLastLoginTimeGreaterThan(Date value) {
            addCriterion("last_login_time >", value, "lastLoginTime");
            return (Criteria) this;
        }

        public Criteria andLastLoginTimeGreaterThanOrEqualTo(Date value) {
            addCriterion("last_login_time >=", value, "lastLoginTime");
            return (Criteria) this;
        }

        public Criteria andLastLoginTimeLessThan(Date value) {
            addCriterion("last_login_time <", value, "lastLoginTime");
            return (Criteria) this;
        }

        public Criteria andLastLoginTimeLessThanOrEqualTo(Date value) {
            addCriterion("last_login_time <=", value, "lastLoginTime");
            return (Criteria) this;
        }

        public Criteria andLastLoginTimeIn(List<Date> values) {
            addCriterion("last_login_time in", values, "lastLoginTime");
            return (Criteria) this;
        }

        public Criteria andLastLoginTimeNotIn(List<Date> values) {
            addCriterion("last_login_time not in", values, "lastLoginTime");
            return (Criteria) this;
        }

        public Criteria andLastLoginTimeBetween(Date value1, Date value2) {
            addCriterion("last_login_time between", value1, value2, "lastLoginTime");
            return (Criteria) this;
        }

        public Criteria andLastLoginTimeNotBetween(Date value1, Date value2) {
            addCriterion("last_login_time not between", value1, value2, "lastLoginTime");
            return (Criteria) this;
        }

        public Criteria andActiveTimeIsNull() {
            addCriterion("active_time is null");
            return (Criteria) this;
        }

        public Criteria andActiveTimeIsNotNull() {
            addCriterion("active_time is not null");
            return (Criteria) this;
        }

        public Criteria andActiveTimeEqualTo(Date value) {
            addCriterion("active_time =", value, "activeTime");
            return (Criteria) this;
        }

        public Criteria andActiveTimeNotEqualTo(Date value) {
            addCriterion("active_time <>", value, "activeTime");
            return (Criteria) this;
        }

        public Criteria andActiveTimeGreaterThan(Date value) {
            addCriterion("active_time >", value, "activeTime");
            return (Criteria) this;
        }

        public Criteria andActiveTimeGreaterThanOrEqualTo(Date value) {
            addCriterion("active_time >=", value, "activeTime");
            return (Criteria) this;
        }

        public Criteria andActiveTimeLessThan(Date value) {
            addCriterion("active_time <", value, "activeTime");
            return (Criteria) this;
        }

        public Criteria andActiveTimeLessThanOrEqualTo(Date value) {
            addCriterion("active_time <=", value, "activeTime");
            return (Criteria) this;
        }

        public Criteria andActiveTimeIn(List<Date> values) {
            addCriterion("active_time in", values, "activeTime");
            return (Criteria) this;
        }

        public Criteria andActiveTimeNotIn(List<Date> values) {
            addCriterion("active_time not in", values, "activeTime");
            return (Criteria) this;
        }

        public Criteria andActiveTimeBetween(Date value1, Date value2) {
            addCriterion("active_time between", value1, value2, "activeTime");
            return (Criteria) this;
        }

        public Criteria andActiveTimeNotBetween(Date value1, Date value2) {
            addCriterion("active_time not between", value1, value2, "activeTime");
            return (Criteria) this;
        }

        public Criteria andStatusIsNull() {
            addCriterion("status is null");
            return (Criteria) this;
        }

        public Criteria andStatusIsNotNull() {
            addCriterion("status is not null");
            return (Criteria) this;
        }

        public Criteria andStatusEqualTo(String value) {
            addCriterion("status =", value, "status");
            return (Criteria) this;
        }

        public Criteria andStatusNotEqualTo(String value) {
            addCriterion("status <>", value, "status");
            return (Criteria) this;
        }

        public Criteria andStatusGreaterThan(String value) {
            addCriterion("status >", value, "status");
            return (Criteria) this;
        }

        public Criteria andStatusGreaterThanOrEqualTo(String value) {
            addCriterion("status >=", value, "status");
            return (Criteria) this;
        }

        public Criteria andStatusLessThan(String value) {
            addCriterion("status <", value, "status");
            return (Criteria) this;
        }

        public Criteria andStatusLessThanOrEqualTo(String value) {
            addCriterion("status <=", value, "status");
            return (Criteria) this;
        }

        public Criteria andStatusLike(String value) {
            addCriterion("status like", value, "status");
            return (Criteria) this;
        }

        public Criteria andStatusNotLike(String value) {
            addCriterion("status not like", value, "status");
            return (Criteria) this;
        }

        public Criteria andStatusIn(List<String> values) {
            addCriterion("status in", values, "status");
            return (Criteria) this;
        }

        public Criteria andStatusNotIn(List<String> values) {
            addCriterion("status not in", values, "status");
            return (Criteria) this;
        }

        public Criteria andStatusBetween(String value1, String value2) {
            addCriterion("status between", value1, value2, "status");
            return (Criteria) this;
        }

        public Criteria andStatusNotBetween(String value1, String value2) {
            addCriterion("status not between", value1, value2, "status");
            return (Criteria) this;
        }

        public Criteria andCreatedDateIsNull() {
            addCriterion("created_date is null");
            return (Criteria) this;
        }

        public Criteria andCreatedDateIsNotNull() {
            addCriterion("created_date is not null");
            return (Criteria) this;
        }

        public Criteria andCreatedDateEqualTo(Date value) {
            addCriterion("created_date =", value, "createdDate");
            return (Criteria) this;
        }

        public Criteria andCreatedDateNotEqualTo(Date value) {
            addCriterion("created_date <>", value, "createdDate");
            return (Criteria) this;
        }

        public Criteria andCreatedDateGreaterThan(Date value) {
            addCriterion("created_date >", value, "createdDate");
            return (Criteria) this;
        }

        public Criteria andCreatedDateGreaterThanOrEqualTo(Date value) {
            addCriterion("created_date >=", value, "createdDate");
            return (Criteria) this;
        }

        public Criteria andCreatedDateLessThan(Date value) {
            addCriterion("created_date <", value, "createdDate");
            return (Criteria) this;
        }

        public Criteria andCreatedDateLessThanOrEqualTo(Date value) {
            addCriterion("created_date <=", value, "createdDate");
            return (Criteria) this;
        }

        public Criteria andCreatedDateIn(List<Date> values) {
            addCriterion("created_date in", values, "createdDate");
            return (Criteria) this;
        }

        public Criteria andCreatedDateNotIn(List<Date> values) {
            addCriterion("created_date not in", values, "createdDate");
            return (Criteria) this;
        }

        public Criteria andCreatedDateBetween(Date value1, Date value2) {
            addCriterion("created_date between", value1, value2, "createdDate");
            return (Criteria) this;
        }

        public Criteria andCreatedDateNotBetween(Date value1, Date value2) {
            addCriterion("created_date not between", value1, value2, "createdDate");
            return (Criteria) this;
        }

        public Criteria andCreatedByIsNull() {
            addCriterion("created_by is null");
            return (Criteria) this;
        }

        public Criteria andCreatedByIsNotNull() {
            addCriterion("created_by is not null");
            return (Criteria) this;
        }

        public Criteria andCreatedByEqualTo(String value) {
            addCriterion("created_by =", value, "createdBy");
            return (Criteria) this;
        }

        public Criteria andCreatedByNotEqualTo(String value) {
            addCriterion("created_by <>", value, "createdBy");
            return (Criteria) this;
        }

        public Criteria andCreatedByGreaterThan(String value) {
            addCriterion("created_by >", value, "createdBy");
            return (Criteria) this;
        }

        public Criteria andCreatedByGreaterThanOrEqualTo(String value) {
            addCriterion("created_by >=", value, "createdBy");
            return (Criteria) this;
        }

        public Criteria andCreatedByLessThan(String value) {
            addCriterion("created_by <", value, "createdBy");
            return (Criteria) this;
        }

        public Criteria andCreatedByLessThanOrEqualTo(String value) {
            addCriterion("created_by <=", value, "createdBy");
            return (Criteria) this;
        }

        public Criteria andCreatedByLike(String value) {
            addCriterion("created_by like", value, "createdBy");
            return (Criteria) this;
        }

        public Criteria andCreatedByNotLike(String value) {
            addCriterion("created_by not like", value, "createdBy");
            return (Criteria) this;
        }

        public Criteria andCreatedByIn(List<String> values) {
            addCriterion("created_by in", values, "createdBy");
            return (Criteria) this;
        }

        public Criteria andCreatedByNotIn(List<String> values) {
            addCriterion("created_by not in", values, "createdBy");
            return (Criteria) this;
        }

        public Criteria andCreatedByBetween(String value1, String value2) {
            addCriterion("created_by between", value1, value2, "createdBy");
            return (Criteria) this;
        }

        public Criteria andCreatedByNotBetween(String value1, String value2) {
            addCriterion("created_by not between", value1, value2, "createdBy");
            return (Criteria) this;
        }

        public Criteria andUpdatedDateIsNull() {
            addCriterion("updated_date is null");
            return (Criteria) this;
        }

        public Criteria andUpdatedDateIsNotNull() {
            addCriterion("updated_date is not null");
            return (Criteria) this;
        }

        public Criteria andUpdatedDateEqualTo(Date value) {
            addCriterion("updated_date =", value, "updatedDate");
            return (Criteria) this;
        }

        public Criteria andUpdatedDateNotEqualTo(Date value) {
            addCriterion("updated_date <>", value, "updatedDate");
            return (Criteria) this;
        }

        public Criteria andUpdatedDateGreaterThan(Date value) {
            addCriterion("updated_date >", value, "updatedDate");
            return (Criteria) this;
        }

        public Criteria andUpdatedDateGreaterThanOrEqualTo(Date value) {
            addCriterion("updated_date >=", value, "updatedDate");
            return (Criteria) this;
        }

        public Criteria andUpdatedDateLessThan(Date value) {
            addCriterion("updated_date <", value, "updatedDate");
            return (Criteria) this;
        }

        public Criteria andUpdatedDateLessThanOrEqualTo(Date value) {
            addCriterion("updated_date <=", value, "updatedDate");
            return (Criteria) this;
        }

        public Criteria andUpdatedDateIn(List<Date> values) {
            addCriterion("updated_date in", values, "updatedDate");
            return (Criteria) this;
        }

        public Criteria andUpdatedDateNotIn(List<Date> values) {
            addCriterion("updated_date not in", values, "updatedDate");
            return (Criteria) this;
        }

        public Criteria andUpdatedDateBetween(Date value1, Date value2) {
            addCriterion("updated_date between", value1, value2, "updatedDate");
            return (Criteria) this;
        }

        public Criteria andUpdatedDateNotBetween(Date value1, Date value2) {
            addCriterion("updated_date not between", value1, value2, "updatedDate");
            return (Criteria) this;
        }

        public Criteria andUpdatedByIsNull() {
            addCriterion("updated_by is null");
            return (Criteria) this;
        }

        public Criteria andUpdatedByIsNotNull() {
            addCriterion("updated_by is not null");
            return (Criteria) this;
        }

        public Criteria andUpdatedByEqualTo(String value) {
            addCriterion("updated_by =", value, "updatedBy");
            return (Criteria) this;
        }

        public Criteria andUpdatedByNotEqualTo(String value) {
            addCriterion("updated_by <>", value, "updatedBy");
            return (Criteria) this;
        }

        public Criteria andUpdatedByGreaterThan(String value) {
            addCriterion("updated_by >", value, "updatedBy");
            return (Criteria) this;
        }

        public Criteria andUpdatedByGreaterThanOrEqualTo(String value) {
            addCriterion("updated_by >=", value, "updatedBy");
            return (Criteria) this;
        }

        public Criteria andUpdatedByLessThan(String value) {
            addCriterion("updated_by <", value, "updatedBy");
            return (Criteria) this;
        }

        public Criteria andUpdatedByLessThanOrEqualTo(String value) {
            addCriterion("updated_by <=", value, "updatedBy");
            return (Criteria) this;
        }

        public Criteria andUpdatedByLike(String value) {
            addCriterion("updated_by like", value, "updatedBy");
            return (Criteria) this;
        }

        public Criteria andUpdatedByNotLike(String value) {
            addCriterion("updated_by not like", value, "updatedBy");
            return (Criteria) this;
        }

        public Criteria andUpdatedByIn(List<String> values) {
            addCriterion("updated_by in", values, "updatedBy");
            return (Criteria) this;
        }

        public Criteria andUpdatedByNotIn(List<String> values) {
            addCriterion("updated_by not in", values, "updatedBy");
            return (Criteria) this;
        }

        public Criteria andUpdatedByBetween(String value1, String value2) {
            addCriterion("updated_by between", value1, value2, "updatedBy");
            return (Criteria) this;
        }

        public Criteria andUpdatedByNotBetween(String value1, String value2) {
            addCriterion("updated_by not between", value1, value2, "updatedBy");
            return (Criteria) this;
        }
    }

    public static class Criteria extends GeneratedCriteria {

        protected Criteria() {
            super();
        }
    }

    public static class Criterion {
        private String condition;

        private Object value;

        private Object secondValue;

        private boolean noValue;

        private boolean singleValue;

        private boolean betweenValue;

        private boolean listValue;

        private String typeHandler;

        public String getCondition() {
            return condition;
        }

        public Object getValue() {
            return value;
        }

        public Object getSecondValue() {
            return secondValue;
        }

        public boolean isNoValue() {
            return noValue;
        }

        public boolean isSingleValue() {
            return singleValue;
        }

        public boolean isBetweenValue() {
            return betweenValue;
        }

        public boolean isListValue() {
            return listValue;
        }

        public String getTypeHandler() {
            return typeHandler;
        }

        protected Criterion(String condition) {
            super();
            this.condition = condition;
            this.typeHandler = null;
            this.noValue = true;
        }

        protected Criterion(String condition, Object value, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.typeHandler = typeHandler;
            if (value instanceof List<?>) {
                this.listValue = true;
            } else {
                this.singleValue = true;
            }
        }

        protected Criterion(String condition, Object value) {
            this(condition, value, null);
        }

        protected Criterion(String condition, Object value, Object secondValue, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.secondValue = secondValue;
            this.typeHandler = typeHandler;
            this.betweenValue = true;
        }

        protected Criterion(String condition, Object value, Object secondValue) {
            this(condition, value, secondValue, null);
        }
    }
}